﻿/*
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at 
 * 
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 */
using System;
using java = biz.ritter.javapi;

namespace biz.ritter.javapi.util
{

    /**
     * An {@code IllegalFormatFlagsException} will be thrown if the combination of
     * the format flags is illegal.
     * 
     * @see java.lang.RuntimeException
     */
    [Serializable]
    public class IllegalFormatFlagsException : IllegalFormatException
            , java.io.Serializable
    {
        private const long serialVersionUID = 790824L;

        private String flags;

        /**
         * Constructs a new {@code IllegalFormatFlagsException} with the specified
         * flags.
         * 
         * @param f
         *           the specified flags.
         */
        public IllegalFormatFlagsException(String f)
        {
            if (null == f)
            {
                throw new java.lang.NullPointerException();
            }
            flags = f;
        }

        /**
         * Returns the flags that are illegal.
         * 
         * @return the flags that are illegal.
         */
        public String getFlags()
        {
            return flags;
        }

        /**
         * Returns the message string of the IllegalFormatFlagsException.
         * 
         * @return the message string of the IllegalFormatFlagsException.
         */

        public override String getMessage()
        {
            java.lang.StringBuilder buffer = new java.lang.StringBuilder();
            buffer.append("Flags = '");
            buffer.append(flags);
            buffer.append("'");
            return buffer.toString();
        }

    }
}